package com.mygame.message.channel;

import com.mygame.common.protobuf.ExternalMessage;
import io.netty.util.concurrent.Promise;

public interface GameChannelOutboundHandler extends GameChannelHandler {
    
    void writeAndFlush(AbstractGameChannelHandlerContext ctx, ExternalMessage msg, GameChannelPromise promise) throws Exception;
    void writeRPCMessage(AbstractGameChannelHandlerContext ctx, ExternalMessage gameMessage, Promise<ExternalMessage> callback);
    void close(AbstractGameChannelHandlerContext ctx, GameChannelPromise promise);
   
}
